let p1 = new Promise((resolve, reject) => {
  setTimeout(() => {
    let data = 1111;
    resolve(data);
  }, 1000);
});

let p2 = new Promise((resolve, reject) => {
  setTimeout(() => {
    let data = 2222;
    resolve(data);
  }, 800);
});

let p3 = new Promise((resolve, reject) => {
  setTimeout(() => {
    let data = 3333;
    resolve(data);
  }, 600);

});

p1.then(function (data) {
  console.log(data);
  return p2;
}).then(function (data) {
  console.log(data);
  return p3;
}).then(function (data) {
  console.log(data);
  console.log('end');
});

// let p1 = new Promise((resolve, reject) => {
//   setTimeout(() => {
//     console.log(1111);
//     resolve();
//   }, 1000);
// });
//
// let p2 = new Promise((resolve, reject) => {
//   setTimeout(() => {
//     console.log(2222);
//     resolve();
//   }, 800);
// });
//
// let p3 = new Promise((resolve, reject) => {
//   setTimeout(() => {
//     console.log(3333);
//     resolve();
//   }, 600);
//
// });
//
// p1.then(function () {
//   return p2;
// }).then(function () {
//   return p3;
// }).then(function () {
//   console.log('end');
// });

